package com.mes.biz.domain;

import javax.validation.Valid;
import javax.validation.constraints.NotBlank;

import com.mes.common.core.domain.BaseEntity;
import lombok.Data;
import com.mes.common.utils.log.annotation.FieldRemark;
import com.mes.common.utils.log.annotation.LogField;
import com.mes.common.annotation.Excel;
import org.apache.commons.lang3.builder.ToStringBuilder;
import org.apache.commons.lang3.builder.ToStringStyle;

/**
 * 供应商档案对象 biz_supplier
 * @author hwg
 * @email hwg
 * @date 2023-04-30
 */
@Data
public class BizSupplier extends BaseEntity<BizSupplier>
{
    private static final long serialVersionUID = 1L;

    /** 供应商类别 */
    @Excel(name = "供应商类别", dictType = "supplier_type")
    @NotBlank(message = "供应商类别不允许为空")
    @LogField
    @FieldRemark(name = "供应商类别",field = "supplierCategory")
    private String supplierCategory;

    /** 供应商编码 */
    @Excel(name = "供应商编码")
    @LogField
    @FieldRemark(name = "供应商编码",field = "supplierCode")
    private String supplierCode;

    /** 供应商名称 */
    @Excel(name = "供应商名称")
    @NotBlank(message = "供应商名称不允许为空")
    @LogField
    @FieldRemark(name = "供应商名称",field = "supplierName")
    private String supplierName;

    /** 助记码 */
    @Excel(name = "助记码")
    @LogField
    @FieldRemark(name = "助记码",field = "mnemonicCode")
    private String mnemonicCode;

    /** 联系电话 */
    @Excel(name = "联系电话")
    @LogField
    @FieldRemark(name = "联系电话",field = "phone")
    private String phone;

    /** 联系人 */
    @Excel(name = "联系人")
    @LogField
    @FieldRemark(name = "联系人",field = "contactPerson")
    private String contactPerson;

    /** 租户id */
    private String tenantId;

    public void setSupplierCategory(String supplierCategory)
    {
        this.supplierCategory = supplierCategory;
    }

    public String getSupplierCategory()
    {
        return supplierCategory;
    }

    public void setSupplierCode(String supplierCode)
    {
        this.supplierCode = supplierCode;
    }

    public String getSupplierCode()
    {
        return supplierCode;
    }

    public void setSupplierName(String supplierName)
    {
        this.supplierName = supplierName;
    }

    public String getSupplierName()
    {
        return supplierName;
    }

    public void setMnemonicCode(String mnemonicCode)
    {
        this.mnemonicCode = mnemonicCode;
    }

    public String getMnemonicCode()
    {
        return mnemonicCode;
    }

    public void setPhone(String phone)
    {
        this.phone = phone;
    }

    public String getPhone()
    {
        return phone;
    }

    public void setContactPerson(String contactPerson)
    {
        this.contactPerson = contactPerson;
    }

    public String getContactPerson()
    {
        return contactPerson;
    }

    public void setTenantId(String tenantId)
    {
        this.tenantId = tenantId;
    }

    public String getTenantId()
    {
        return tenantId;
    }


    @Override
    public String toString() {
        return new ToStringBuilder(this, ToStringStyle.MULTI_LINE_STYLE)
            .append("supplierCategory", getSupplierCategory())
            .append("supplierCode", getSupplierCode())
            .append("supplierName", getSupplierName())
            .append("mnemonicCode", getMnemonicCode())
            .append("phone", getPhone())
            .append("contactPerson", getContactPerson())
            .append("tenantId", getTenantId())
            .append("remark", getRemark())
            .append("id", getId())
            .append("createBy", getCreateBy())
            .append("createDept", getCreateDept())
            .append("createTime", getCreateTime())
            .append("updateBy", getUpdateBy())
            .append("updateTime", getUpdateTime())
            .append("updateIp", getUpdateIp())
            .append("version", getVersion())
            .append("delFlag", getDelFlag())
            .toString();
    }
}
